<TITLE> - GNU Software Available Now</TITLE>
<P>Go to the <A HREF="gnu_bulletin_9401_19.html">previous</A>, <A HREF="gnu_bulletin_9401_21.html">next</A> chapter.<P>
<H1><A NAME="SEC37" HREF="gnu_bulletin_9401_toc.html#SEC37">GNU Software Available Now</A></H1>
<P>
We offer:
<P>
<UL>
<P>
<LI>
Source Code CD-ROM (see "Source Code CD-ROM")
<P>
<LI>
Compiler Tools Binaries CD-ROM (see "Compiler Tools Binaries CD-ROM")
<P>
<LI>
MS-DOS Diskettes with some GNU software (see "MS-DOS Distribution")
<P>
<LI>
VMS tapes (which include sources and executables) for GNU Emacs and the
GNU C compiler (see "VMS Emacs and VMS Compiler Tapes")
<P>
</UL>
<P>
We also offer Unix software source distributions tapes in <CODE>tar</CODE> format
on the following media:
<P>
<UL>
<P>
<LI>
4mm DAT cartridges
<P>
<LI>
8mm Exabyte cartridges
<P>
<LI>
Sun QIC-24 cartridges (readable on some other systems)
<P>
<LI>
Hewlett-Packard 16-track cartridges
<P>
<LI>
IBM RS/6000 QIC-150 cartridges (readable on some other systems) (the
RS/6000 Emacs tape has an Emacs binary as well)
<P>
<LI>
1600bpi 9-track reel tape
<P>
</UL>
<P>
The contents of the reel and various cartridge tapes for Unix systems
are the same (except for the RS/6000 Emacs tape, which also has executables
for Emacs); only the media are different (see the "Free Software
Foundation Order Form").  Source code for the manuals is included in Texinfo
format.  We welcome all bug reports sent to the appropriate electronic
mailing list (see "Free Software Support").
<P>
Some of the files on the tapes may be compressed with <CODE>gzip</CODE> to
make them fit.  Refer to the top-level <TT>`README'</TT> file at the
beginning of each tape for instructions on uncompressing them.
<CODE>uncompress</CODE> and <CODE>unpack</CODE> <EM>do not work</EM>!
<P>
Version numbers listed after program names, in the articles describing the
contents of each media, were current at the time this Bulletin was
published.  When you order a distribution tape or diskette, some of the
programs might be newer, and therefore the version number higher.
<P>
Key to cross reference:
<P>
GNU software currently available (see "Project GNU Status
Report" for what's new features and programs are coming):
<P>
<UL>
<P>
<LI><CODE>acm</CODE>     (SrcCD, UtilT)
<P>
<CODE>acm</CODE> is a LAN-oriented, multiplayer aerial combat simulation that
runs under the X Window System.  Players engage in air to air combat
against one another using heat seeking missiles and cannons.  Eventually we
hope to turn this into a more general purpose flight simulator.
<P>
<LI><B>Autoconf</B>     (SrcCD, UtilT)
<P>
Autoconf produces shell scripts which automatically configure source code
packages.  These scripts adapt the packages to many kinds of Unix-like
systems without manual user intervention.  Autoconf creates a script for a
package from a template file which lists the operating system features
which the package can use, in the form of <CODE>m4</CODE> macro calls.  Most GNU
programs now use Autoconf--generated configure scripts.
<P>
<LI><B>BASH</B>     (SrcCD, UtilT)
<P>
The GNU shell, BASH (<B>B</B>ourne <B>A</B>gain <B>SH</B>ell), is compatible with
the Unix <CODE>sh</CODE> and offers many extensions found in <CODE>csh</CODE> and
<CODE>ksh</CODE>.  BASH has job control, <CODE>csh</CODE>-style command history, and
command-line editing (with Emacs and <CODE>vi</CODE> modes built-in and the
ability to rebind keys) via the <B>readline</B> library.
<P>
<LI><B><CODE>bc</B></CODE>     (SrcCD, UtilT)
<P>
<CODE>bc</CODE> is an interactive algebraic language with arbitrary precision.
GNU <CODE>bc</CODE> follows the POSIX 1003.2
draft
standard, with several extensions including multi-character variable names,
an <CODE>else</CODE> statement and full Boolean expressions.
<P>
<LI><B>BFD</B>     (BinCD, LangT, SrcCD)
<P>
The Binary File Descriptor library allows a program which operates on
object files (e.g. <CODE>ld</CODE> or GDB) to support many different formats
in a clean way.  BFD provides a portable interface, so that only BFD needs
to know the actual details of a particular format.  One consequence of this
design is that all programs using BFD will support formats such as a.out,
COFF, ELF &#38; OSF-Rose.  BFD comes with Texinfo documentation.
<P>
Presently BFD is not distributed separately but is included with packages
that use it, because it is not yet completely stable.
<P>
<LI><B>Binutils</B>     (BinCD, LangT, SrcCD)
<P>
The Binutils includes the programs:
<CODE>ar</CODE>,
<CODE>c<TT>++</CODE>filt</TT>,
<CODE>demangle</CODE>,
<CODE>gprof</CODE>,
<CODE>ld</CODE>,
<CODE>nlmconv</CODE>,
<CODE>nm</CODE>,
<CODE>objcopy</CODE>,
<CODE>objdump</CODE>,
<CODE>ranlib</CODE>,
<CODE>size</CODE>,
<CODE>strings</CODE>,
&#38;
<CODE>strip</CODE>.
<P>
Binutils Version 2 is completely rewritten to use the BFD library.
The GNU linker <CODE>ld</CODE> emits source-line numbered error messages for
multiply-defined symbols and undefined references.
<CODE>nlmconv</CODE> converts object files into Novell NetWare Loadable Modules.
The <CODE>objdump</CODE> program can disassemble code for a29k, ALPHA, H8/300,
H8/500, HP-PA, i386, i960, m68k, m88k, MIPS, SH, SPARC, &#38; Z8000
processors, and can display other data such as symbols and relocations from
any file format understood by BFD.  Also see "Project GNU Status Report".
<P>
<LI><B>Bison</B>     (BinCD, LangT, SrcCD, VMSCompT)
<P>
Bison is an upwardly compatible replacement for the parser generator
<CODE>yacc</CODE>.  Sources for the <CITE>Bison Manual</CITE> and reference card are
included.
<P>
<LI><B>GNU C Library</B>     (LangT, SrcCD)
<P>
The library supports ANSI C-1989 and POSIX 1003.1-1990 and has most of the
functions specified in POSIX 1003.2 draft 11.2.  It is upward compatible
with 4.4 BSD and includes many System V functions, plus GNU extensions.
<P>
Version 1.07 uses a standard GNU <CODE>configure</CODE> script.  It runs on Sun-3
(SunOS 4.1), Sun-4 (SunOS 4.1 &#38; Solaris 2), HP 9000/300 (4.3 BSD), SONY
News 800 (NewsOS 3 or 4), MIPS DECstation (Ultrix 4), DEC Alpha (OSF/1),
i386/i486 (System V, SVR4, BSD, SCO 3.2 &#38; SCO ODT 2.0) &#38; Sequent Symmetry
i386 (Dynix 3).  Texinfo source for the <CITE>GNU C Library Reference Manual</CITE> is
included.  Also see "Project GNU Status Report".
<P>
<LI><B>Calc</B>     (EmcsT, SrcCD)
<P>
Calc (written by Dave Gillespie in Emacs Lisp) is an extensible,
advanced desk calculator and mathematical tool that runs as part of GNU
Emacs.  It comes with source for the <CITE>Calc Manual</CITE> and reference
card, which serves as a tutorial and reference.  If you wish, you can
use Calc just as a simple four-function calculator, but it provides
additional features including choice of algebraic or RPN (stack-based)
entry, logarithmic functions, trigonometric and financial functions,
arbitrary precision, complex numbers, vectors, matrices, dates, times,
infinities, sets, algebraic simplification, differentiation, and
integration.  Calc also outputs to <CODE>gnuplot</CODE>.
<P>
<LI><B>GNU Chess</B>     (UtilT, SrcCD)
<P>
GNU Chess is a program that plays chess with you.  It is written
entirely in the C language and has been ported to the PC, the Cray-2 &#38;
numerous other machines.  It has also been ported to other operating
systems, including Microsoft Windows and MS-DOS, though these versions are
not supported by the maintainer.  There are both text and X display
interfaces.
<P>
GNU Chess implements many specialized features including the null move
heuristic, a hash table with aging, the history heuristic (another form of
the earlier killer heuristic), caching of static evaluations, and a
sophisticated database which lets it play the first several moves in the
game quickly.
<P>
GNU Chess won the Uniform Platform event held in August 1992 in London,
England.  Nine programs competed, running on identical hardware.
<P>
GNU Chess is primarily supported by Stuart Cracraft on behalf of
FSF.
<P>
<PRE>
Stuart Cracraft                             <CODE>cracraft@ai.mit.edu</CODE>
P.O. Box 2841
Laguna Hills, CA   92653   USA      Phone: (714) 770-8532
</PRE>
<P>
<LI><B>CLISP</B>     (EmcsT, SrcCD)
<P>
CLISP is a Common Lisp implementation by Bruno Haible and Michael Stoll.
It mostly supports the Common Lisp described by <CITE>Common LISP: The
Language (1st edition)</CITE>.  CLISP includes an interpreter, a byte-compiler
and, for some machines, a screen editor.  CLISP needs only 1.5 MB of
memory and runs on many microcomputers (including the Atari ST, Amiga
500-2000, most MS-DOS systems &#38; OS/2) &#38; on some Unix workstations
(Linux, SunOS (SPARC), Sun-386i, HP-UX (HP 9000/800) &#38; others).
<P>
<LI><B><CODE>cpio</B></CODE>     (UtilD, UtilT, SrcCD)
<P>
<CODE>cpio</CODE> is an alternative archive program with all the features of SVR4
<CODE>cpio</CODE>, including support for the final POSIX 1003.1 <CITE>ustar</CITE>
standard.  <CODE>mt</CODE> a program to position magnetic tapes is included with
<CODE>cpio</CODE>.
<P>
<LI><B>CVS</B>     (UtilT, SrcCD)
<P>
CVS, the Concurrent Version System, manages software revision and release
control in a multi-developer, multi-directory, multi-group environment.  It
works best in conjunction with RCS versions 4 and above, but will parse
older RCS formats with the loss of CVS's fancier features.  See Berliner,
Brian, "CVS-II: Parallelizing Software Development," <CITE>Proceedings of
the Winter 1990 USENIX Association Conference</CITE>.
<P>
<LI><B><CODE>dc</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>dc</CODE> is an RPN calculator.  GNU <CODE>bc</CODE> does not require a separate
<CODE>dc</CODE> program to run.  This version of <CODE>dc</CODE> will eventually be
merged with GNU <CODE>bc</CODE>.
<P>
<LI><B>DejaGnu</B>     (LangT, SrcCD)
<P>
DejaGnu is a framework for testing other programs that provides a single
front end for all tests.  The flexibility and consistency of the DejaGnu
framework make it easy to write tests for any program.  DejaGnu comes with
<CODE>expect</CODE> and Tcl.
<P>
<LI><B>Diffutils</B>     (UtilD, UtilT, SrcCD)
<P>
GNU <CODE>diff</CODE> compares files showing line-by-line changes in several
flexible formats.  It is much faster than traditional Unix versions.
The Diffutils distribution contains <CODE>diff</CODE>, <CODE>diff3</CODE>,
<CODE>sdiff</CODE>, and <CODE>cmp</CODE>.
<P>
<LI><B>DJGPP</B>     (BinCD, DjgppD)
<P>
DJ Delorie has ported GCC/G<TT>++</TT> 2.5.7 to the i386 MS-DOS platform.  The
DJGPP package also contains a 32-bit 80386 DOS extender with symbolic
debugger; development libraries; and ports of Bison, <CODE>flex</CODE>, GAS, and
the GNU binary utilities.  Full source code is provided.
<P>
DJGPP supports SVGA (up to 1024x768),
XMS &#38; VDISK memory allocation,
<CODE>himem.sys</CODE>,
VCPI (e.g. QEMM, DESQview, &#38; 386MAX), and
DPMI (e.g. Windows 3.x, OS/2, QEMM, &#38; QDPMI).
<P>
It is available via FTP from
<CODE>ftp.clarkson.edu</CODE> in <TT>`/pub/msdos/djgpp'</TT>.  You can
subscribe to a mailing list on DJGPP by sending your e-mail address to
<CODE>djgpp-request@sun.soe.clarkson.edu</CODE>.  In addition, the FSF
distributes it on floppy disks and on the Compiler Tools Binaries CD-ROM.
<P>
See the description for GCC in this section for more information.
<P>
<LI><B><CODE>dld</B></CODE>     (LangT, SrcCD)
<P>
<CODE>dld</CODE> is a dynamic linker written by W. Wilson Ho.  Linking your
program with the <CODE>dld</CODE> library allows you to dynamically load object
files into the running binary.  Currently supported are VAX (Ultrix), Sun 3
(SunOS 3.4 and 4.0), SPARC (SunOS 4.0), Sequent Symmetry (Dynix), and Atari ST.
<P>
<LI><B><CODE>doschk</B></CODE>     (UtilT, SrcCD)
<P>
This program is intended as a utility to help software developers ensure
that their source file names are distinguishable on System V platforms with
14-character filenames and on MS-DOS with 11 character filenames.
<P>
<LI><B><CODE>ecc</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>ecc</CODE> is a Reed-Solomon error correction checking program, which can
correct three byte errors in a block of 255 bytes and detect more severe
errors.
<P>
<LI><B>Elib</B>     (EmcsT, SrcCD)
<P>
This is a small library of Emacs Lisp functions, including routines for
using AVL trees and doubly-linked lists.
<P>
<LI><B><CODE>elvis</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>elvis</CODE> is a clone of the <CODE>vi</CODE>/<CODE>ex</CODE> Unix editor.  It
supports nearly all of the <CODE>vi</CODE>/<CODE>ex</CODE> commands in both visual and
line mode.  <CODE>elvis</CODE> runs under BSD, System V, Xenix, Minix, MS-DOS &#38;
Atari TOS, and should be easy to port to many other systems.
<P>
<LI><B>GNU Emacs 18</B>     (DemcsD, EmcsT, SrcCD, VMSEmcsT)
<P>
In 1975, Richard Stallman developed the first Emacs, an extensible,
customizable real-time display editor.  GNU Emacs is his second
implementation.  It offers true Lisp--smoothly integrated into the
editor--for writing extensions, and provides an interface to MIT's X
Window System.  In addition to its powerful native command set, extensions
which emulate other popular editors are distributed: vi, EDT (DEC's VMS
editor) and Gosling (aka Unipress) Emacs.  It has many other features which
make it a full computing support environment.  It is described by the
<CITE>GNU Emacs Manual</CITE>, the <CITE>GNU Emacs Lisp Reference Manual</CITE> and a
reference card.  Source for all three come with the software.
<P>
GNU Emacs 18.59 runs on many Unix systems (in hardware order): Alliant
FX/80 &#38; FX/2800, Altos 3068, Amdahl (UTS), Apollo, AT&#38;T (3Bs &#38; 7300 PC), DG
Aviion, Bull DPX/2 (2nn &#38; 3nn) CCI 5/32 &#38; 6/32, Celerity, Convex, Digital
(DECstation 3100 &#38; 5000 (PMAXes), Mips, VAX (BSD, SysV &#38; VMS)),
Motorola Delta 147 &#38; 187 Dual, Elxsi 6400, Encore (DPC, APC &#38; XPC), Gould,
HP (9000 series 200, 300, 700 &#38; 800, but not 500), HLH Orion
(original &#38; 1/05), IBM (RS/6000 (AIX), RT/PC (4.2 &#38; AIX) &#38; PS/2 (AIX (386
only))), ISI (Optimum V, 80386), Intel 860 &#38; 80386 (BSD, Esix, SVR3, SVR4,
SCO, ISC, IX, AIX &#38; others (see "MS-DOS Distribution" &#38; "Free
Software for Microcomputers")), Iris (2500, 2500 Turbo &#38; 4D), Masscomp,
MIPS, National Semiconductor 32000, NeXT (Mach), NCR Tower 32 (SVR2 &#38;
SVR3), Nixdorf Targon 31, Nu (TI &#38; LMI), pfa50, Plexus, Prime EXL, Pyramid
(original &#38; MIPS), Sequent (Balance &#38; Symmetry), SONY News (m68k &#38; MIPS),
Stride (system release 2), all Suns including 386i (all SunOS &#38; some
Solaris vers.), Tadpole, Tahoe, Tandem Integrity S2, Tektronix (16000 &#38;
4300), Triton 88, Ustation E30 (SS5E), Whitechapel (MG1) &#38; Wicat.
<P>
In operating system order: AIX (RS/6000, RT/PC, 386-PS/2), BSD (vers. 4.1,
4.2, 4.3), DomainOS, Esix (386), HP-UX (HP 9000 series 200, 300, 700, 800
but not 500), ISC (386), IX (386), Mach, Microport, NewsOS (Sony m68k &#38;
MIPS) SCO (386), SVR0 (Vax, AT&#38;T 3Bs), SVR2, SVR3, SVR4, Solaris 2.0,
SunOS, UTS (Amdahl), Ultrix (vers. 3.0, 4,1), Uniplus 5.2 (Dual machines),
VMS (vers. 4.0, 4.2, 4.4, 5.5) &#38; Xenix (386).
<P>
<LI><B>GNU Emacs 19</B>     (EmcsT, SrcCD)
<P>
Unlike some other recent derivations of Emacs,
GNU Emacs 19 continues to
work on character-only terminals as well as under the X Window System.  New
features in Emacs 19 include:
multiple X windows ("frames" to Emacs), with a separate X window
for the minibuffer or with a minibuffer attached to each X window;
property lists associated with regions of text in a buffer;
multiple fonts and colors defined by those properties;
simplified and improved processing of function keys, mouse clicks
and mouse movement;
X selection processing, including clipboard selections;
hooks to be run if point or mouse moves outside a certain range;
menu bars and popup menus defined by keymaps;
scrollbars;
before and after change hooks;
source-level debugging of Emacs Lisp programs;
European character sets support;
floating point numbers;
improved buffer allocation, using a new mechanism capable of
returning storage to the system when a buffer is killed;
interfacing with the X resource manager;
GNU configuration scheme support;
good RCS support;
&#38;
many updated libraries.
<P>
GNU Emacs 19.22 is known to work on (in hardware order):
Bull DPX/2 2nn &#38; 3nn (SVR3) &#38; sps7 (SVR2);
Clipper;
Cubix QBx (SysV);
DEC MIPS (Ultrix 4.2 &#38; OSF/1, not VMS);
Motorola Delta 147 &#38; 187 (SVR3, SVR4, &#38; m88kbcs);
Elxsi 6400 (SysV);
Gould Power Node &#38; NP1 (BSD 4.2 &#38; 4.3);
Honeywell XPS100 (SysV);
HP9000 series 200, 300, 700, 800 (BSD 4.3 or HP-UX 7, 8, 9);
i386 &#38; i486 (386BSD, AIX, BSDI/386, FreeBSD, Esix, ISC, Linux, NetBSD, SCO3.2v4 with ODT, SysV, Xenix);
RS6000 (AIX 3.2);
RT/PC (AIX or BSD);
Iris 4D (Irix 4.x &#38; 5.x);
National Semiconductor 32K (Genix);
NeXT (BSD or Mach 2 w/ NeXTStep 3.0);
Prime EXL (SysV);
Pyramid (BSD);
Sequent Symmetry (BSD);
Sun 3 &#38; 4, SPARC 1, 1<TT>+</TT>, 2, 10 &#38; Classic (SunOS 4.0, 4.1, Solaris 2);
Tadpole 68k (SysV);
Tektronix XD88 (SVR3) &#38; 4300 (BSD); &#38;
Titan P2 &#38; P3 (SysV).
<P>
In operating system order:
AIX (i386, RS6000, RT/PC);
BSD 4.1, 4.2, 4.3 (i386, Gould Power Node &#38; NP1, HP9000 series 300, NeXT, Pyramid, Symmetry, Tektronix 4300, RT/PC);
Esix (i386);
Genix (ns32k);
HP-UX 7, 8, 9 (HP 9000 series 200, 300, 700, 800, but not 500);
Irix 4 &#38; 5 (Iris 4D);
ISC (i386);
Linux (i386);
NetBSD (i386, HP9000 series 300);
Mach 2 &#38; 3 (i386, NeXT);
SCO 3.2v4 (i386);
SVR2 (Bull sps7);
SVR3 (Bull DPX/2 2nn &#38; 3nn, Motorola Delta 147 &#38; 187, Tektronix XD88);
SVR4 (Motorola Delta 147 &#38; 187);
Solaris 2 (SPARC 1, 1<TT>+</TT>, 2, 10, Classic);
SunOS 4.0, 4.1 (Sun 3 &#38; 4, SPARC 1, 1<TT>+</TT>, 2, 10 &#38; Classic);
Ultrix 4.2 (DEC MIPS); &#38;
Xenix (i386).
<P>
Other configurations supported by Emacs 18 should work with few
changes; as users tell us more about their experiences with different
systems, we will augment the list.  Also see "Project GNU Status Report".
<P>
<LI><B><CODE>es</B></CODE>     (UtilT, SrcCD)
<P>
This is an extensible shell based on <CODE>rc</CODE> that has
first class functions, lexical scope, an exception system, and
rich return values (i.e. functions can return values other than just
numbers).  Like <CODE>rc</CODE>, it is great for both interactive use and for
scripting, particularly because its quoting rules are much less baroque
than the C or Bourne shells.
<P>
<LI><B><CODE>expect</B></CODE>     (LangT, SrcCD)
<P>
<CODE>expect</CODE> runs scripts to conduct dialogs with programs.  It is
distributed along with Tcl and DejaGnu.
<P>
<LI><B><CODE>f2c</B></CODE>     (LangT, SrcCD)
<P>
<CODE>f2c</CODE> converts Fortran-77 source files into C or C<TT>++</TT>, which can
then be compiled with GCC.
<P>
<LI><B>Fax</B>     (UtilT, SrcCD)
<P>
Fax is the freely-available MIT AI Lab fax spooling system, which provides
Group 3 fax transmission and reception services for a networked Unix
system.  It requires a faxmodem which conforms to the new EIA-592
Asynchronous Facsimile DCE Control Standard, Service Class 2.
<P>
<LI><B>Fileutils</B>     (UtilD, UtilT, SrcCD)
<P>
Fileutils work on files:
<CODE>chgrp</CODE>,
<CODE>chmod</CODE>,
<CODE>chown</CODE>,
<CODE>cp</CODE>,
<CODE>dd</CODE>,
<CODE>df</CODE>,
<CODE>dir</CODE>,
<CODE>du</CODE>,
<CODE>install</CODE>,
<CODE>ln</CODE>,
<CODE>ls</CODE>,
<CODE>mkdir</CODE>,
<CODE>mkfifo</CODE>,
<CODE>mknod</CODE>,
<CODE>mv</CODE>,
<CODE>mvdir</CODE>,
<CODE>rm</CODE>,
<CODE>rmdir</CODE>,
<CODE>touch</CODE>,
&#38;
<CODE>vdir</CODE>.
Only some of these are on the Selected Utilities diskettes.
<P>
<LI><B><CODE>find</B></CODE>     (UtilD, UtilT, SrcCD)
<P>
<CODE>find</CODE> is frequently used both interactively and in shell scripts to
find files which match certain criteria and perform arbitrary operations on
them.  <CODE>xargs</CODE> and <CODE>locate</CODE> are also included.
<P>
<LI><B><CODE>finger</B></CODE>     (UtilT, SrcCD)
<P>
GNU Finger, which serves as a direct replacement for existing finger
programs, solves this problem.  For sites with many hosts, a single host
may be designated as the finger <DFN>server</DFN> host.  This host collects
information about who is logged in to other hosts at that site.  If a user
at site A wants to know about users logged on at site B, a single
query to any machine at the site will return complete information.
<P>
<LI><B><CODE>flex</B></CODE>     (LangT, UtilD, SrcCD)
<P>
<CODE>flex</CODE> is a mostly-compatible replacement for the <CODE>lex</CODE> scanner
generator, written by Vern Paxson of the Lawrence Berkeley Laboratory.
<CODE>flex</CODE> generates far more efficient scanners than <CODE>lex</CODE> does.
Sources for the <CITE>Flex Manual</CITE> and reference card are included.
<P>
<LI><B>Fontutils</B>     (UtilT, SrcCD)
<P>
The Fontutils can create fonts for use with Ghostscript or TeX, starting
with a scanned type image and converting the bitmaps to outlines.  They
also contain general conversion programs and other utilities.
<P>
<LI><B>GAS</B>     (BinCD, LangT, SrcCD)
<P>
The GNU assembler has been rewritten to use the BFD library.
Native assembly works for:
Sun 3, 4, &#38; SPARC (SunOS 4.1 or Solaris 2);
i386 (AIX, 386BSD, BSDI/386, Linux);
m68k (BSD, HP-UX, Convergent Technologies SysV);
MIPS (Ultrix, Irix);
Hitachi H8/500; &#38;
VAX (BSD, Ultrix, VMS).
<P>
Cross assembling can be done for:
i386 (SCO, go32 MS-DOS/DJGPP);
ebmon29k;
Hitachi H8/300;
i960 (COFF);
MIPS ECOFF (Ultrix, Iris, MIPS Magnum);
Nindy 960;
vxworks (68k or 960); &#38;
Zilog Z8000.
<P>
<LI><B>GAWK</B>     (LangT, SrcCD)
<P>
GAWK is upwardly compatible with the System V Release 4 version of
<CODE>awk</CODE>.  Texinfo source for the <CITE>GAWK Manual</CITE> comes with the
software.
<P>
<LI><B>GCC</B>     (BinCD, DjgppD, LangT, SrcCD)
<P>
Version 2 of the GNU C compiler supports three languages: C, C<TT>++</TT> and
Objective C; the source file name suffix or a compiler option selects
the language.  The front end support for Objective C was donated by NeXT.
The runtime support needed to run Objective C programs is now distributed
with GCC (this does not include any Objective C classes aside from
<CODE>object</CODE>).  As much as possible, G<TT>++</TT> is kept compatible with the
evolving draft ANSI standard, but not with <CODE>cfront</CODE> (AT&#38;T's
compiler), which has been diverging from ANSI.
<P>
The GNU C compiler is a fairly portable optimizing compiler which performs
automatic register allocation, common sub-expression elimination, invariant
code motion from loops, induction variable optimizations, constant
propagation and copy propagation, delayed popping of function call
arguments, tail recursion elimination, integration of inline functions and
frame pointer elimination, instruction scheduling, loop unrolling, filling
of delay slots, leaf function optimization, optimized multiplication by
constants, a certain amount of common subexpression elimination (CSE)
between basic blocks (though not all of the supported machine descriptions
provide for scheduling or delay slots), a feature for assigning attributes
to instructions, and many local optimizations that are automatically
deduced from the machine description.  Function-wide CSE has been written,
but needs to be cleaned up before it can be installed.
Position-independent code is supported on the 68k, i386, Hitachi Slt,
Hitachi H8/300, Clipper, 88k, SPARC &#38; SPARClite.
<P>
GCC can open-code most arithmetic on 64-bit values (type <CODE>long long
int</CODE>).  It supports extended floating point (type <CODE>long double</CODE>) on
the 68k; other machines will follow.
<P>
GCC supports full ANSI C, traditional C and GNU C extensions.  GNU C has
been extended to support nested functions, nonlocal gotos, and taking the
address of a label.
<P>
GCC can generate a.out, COFF, ELF &#38; OSF-Rose files when used with a
suitable assembler.  It can produce debugging information in these
formats: BSD stabs, COFF, ECOFF, ECOFF with stabs, &#38; DWARF.
<P>
GCC generates code for: a29k, Alpha, ARM, Convex cN, Clipper, Elxsi,
H8300, HP-PA (1.0 and 1.1) i370, i386, i486, i860, i960, m68k, m68020, m88k,
MIPS, ns32k, Pyramid, ROMP, RS6000, SH, SPARC, SPARClite, VAX, and we32k.
<P>
Operating systems supported include: AIX, ACIS, AOS, BSD, Clix, Ctix,
DG/UX, Dynix, Genix, HP-UX, ISC, Irix, Linux, Luna, LynxOS, Mach, Minix,
NeWSOS, OSF, OSF-Rose, RISCOS, SCO, Solaris 2, SunOS 4, SysV, Ultrix, Unos,
&#38; VMS.
<P>
The old (version 1) machine descriptions for the Alliant, Tahoe and Spur
(as well as a new port for the Tron) do not work, but are still included in
the distribution in case someone wants to work on them.
<P>
Using the configuration scheme for GCC, building a cross-compiler is as
easy as building a compiler for the same target machine.  Version 2
supports more general calling conventions: it can pass arguments "by
reference" and can preallocate the space for stack arguments.  GCC 2 on
the SPARC uses the SPARC conventions for structure arguments and return
values.
<P>
Source for the GCC manual, <CITE>Using and Porting GNU CC</CITE>, is included
with the compiler.  The manual describes how to run and install the GNU C
compiler, and how to port it to new systems.  It describes new features and
incompatibilities of the compiler, but people not familiar with C will also
need a good reference on the C programming language.  Also see "Project
GNU Status Report".
<P>
<LI><B>GDB</B>     (BinCD, LangT, SrcCD)
<P>
In GDB, object files and symbol tables are now read via the BFD library,
which allows a single copy of GDB to debug programs of multiple object file
formats such as a.out and COFF.  Other new features include command
language improvements, remote debugging over serial lines or TCP/IP, and
watchpoints (breakpoints triggered when the value of an expression
changes).  Exception handling, SunOS shared libraries and C<TT>++</TT> multiple
inheritance are only supported when used with GCC version 2.
<P>
Both X and GNU Emacs user interfaces to GDB are available, in addition to
its command line interpreter.
<P>
GDB uses a standard remote interface to a simulator library which (so far)
contains simulators for the Zilog Z8001/2, the Hitachi H8/300, H8/500 &#38; Super-H.
<P>
GDB can perform cross-debugging.  To say that GDB <EM>targets</EM> a platform
means that it can perform native or cross-debugging for it.  To say that
GDB can <EM>host</EM> a given platform means that it can be built on it, but
cannot necessarily debug native programs.  GDB can:
<P>
<UL>
<P>
<LI><EM>target</EM> &#38; <EM>host</EM>: DEC Alpha (OSF/1), Amiga 3000 (Amix),
DECstation 3100 &#38; 5000 (Ultrix), HP 9000/300 (BSD), IBM RS/6000 (AIX), i386
(BSD, SCO, Linux, LynxOS), Motorola Delta m88k (System V), NCR 3000 (SVR4),
SGI Iris (MIPS running Irix V3 &#38; V4), SONY News (NewsOS 3.x), Sun-3 &#38; SPARC
(SunOS 4.1, Solaris 2.0) &#38; Ultracomputer (29K running Sym1).
<P>
<LI><EM>target</EM>, but not <EM>host</EM>: i960 Nindy, AMD
29000 (COFF &#38; a.out), Fujitsu SPARClite, Hitachi H8/300, m68k &#38; m68332.
<P>
<LI><EM>host</EM>, but not <EM>target</EM>: Intel 386 (Mach), IBM
RT/PC (AIX) &#38; HP/Apollo 68k (BSD).
<P>
</UL>
<P>
In addition, GDB can use the symbol tables emitted by the compilers
supplied by most vendors of MIPS-based machines, including DEC.  (These
symbol tables are in a format which almost nobody else uses.)  Source for
the manual <CITE>Debugging with GDB</CITE> and a reference card are included.
<P>
<LI><B><CODE>gdbm</B></CODE>     (LangT, UtilD, SrcCD)
<P>
The <CODE>gdbm</CODE> library is the GNU replacement for the traditional
<CODE>dbm</CODE> and <CODE>ndbm</CODE> libraries.  It implements a database using quick
lookup by hashing.  <CODE>gdbm</CODE> does not need sparse file formats
(unlike its Unix counterparts).
<P>
<LI><B>Ghostscript</B>     (UtilT, SrcCD)
<P>
Ghostscript is GNU's graphics language which is almost fully compatible
with Postscript (see "Project GNU Status Report").
<P>
<LI><B>Ghostview</B>     (UtilT, SrcCD)
<P>
Ghostview provides an X11 user interface for the Ghostscript interpreter.
Ghostview and Ghostscript function as two cooperating programs; Ghostview
creates a viewing window and Ghostscript draws in it.  There is a port for
Ghostview to MS-Windows.
<P>
<LI><B><CODE>gmp</B></CODE>     (LangT, SrcCD)
<P>
GNU MP is a library for arbitrary precision arithmetic on signed integers
and rational numbers.  It has a rich set of functions with a regular
interface.
<P>
<LI><B>GNATS</B>     (UtilT, SrcCD)
<P>
Gnats (<B>GN</B>ats: <B>A</B> <B>T</B>racking <B>S</B>ystem) is a bug-tracking system.
It is based upon the paradigm of a central site or organization which
receives problem reports and negotiates their resolution by electronic
mail.  Although it's been used primarily as a software bug-tracking system
so far, it is sufficiently generalized so that it could be used for
handling system administration issues, project management or any number of
other applications.
<P>
<LI><B><CODE>gnuplot</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>gnuplot</CODE> is an interactive program for plotting mathematical
expressions and data.  It handles both curves (2 dimensions) and surfaces
(3 dimensions).  Curiously, the program was neither written nor named for
the GNU Project; the name is a coincidence.
<P>
<LI><B>GnuGo</B>     (UtilT, SrcCD)
<P>
GnuGo plays the game of Go (Wei-Chi); it is not yet very sophisticated.
<P>
<LI><B><CODE>gperf</B></CODE>     (LangT, SrcCD)
<P>
<CODE>gperf</CODE> is a "perfect" hash-table generation utility.  There are
actually two implementations of <CODE>gperf</CODE>, one written in C and one in
C<TT>++</TT>.  Both will produce hash functions in either C or C<TT>++</TT>.
<P>
<LI><B>GNU Graphics</B>     (UtilT, SrcCD)
<P>
GNU Graphics is a set of programs which produce plots from ASCII or binary
data.  It supports output to Tektronix 4010, Postscript, and the X Window
System or compatible devices.  Features include support for output in ln03
and TekniCAD TDA file formats; a replacement for the <CODE>spline</CODE> program;
examples of shell scripts using <CODE>graph</CODE> and <CODE>plot</CODE>; a statistics
toolkit; and the use of <CODE>configure</CODE> for installation.
<P>
Existing ports need retesting.  Contact Rich Murphey,
<CODE>Rich@rice.edu</CODE>, if you can help test/port it to anything beyond
a SPARCstation.
<P>
<LI><B><CODE>grep</B></CODE>/<B><CODE>egrep</B></CODE>/<B><CODE>fgrep</B></CODE>     (UtilD, UtilT, SrcCD)
<P>
The <CODE>[ef]grep</CODE> programs are GNU's versions of the Unix programs of the
same name.  They are much faster than the traditional Unix versions.
<P>
<LI><B><CODE>groff</B></CODE> and <B><CODE>mgm</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>groff</CODE> is a document formatting system, which includes
implementations of <CODE>troff</CODE>, <CODE>pic</CODE>, <CODE>eqn</CODE>, <CODE>tbl</CODE>,
<CODE>refer</CODE>, the <CODE>man</CODE>, <CODE>ms</CODE> and <CODE>mm</CODE> macros,
as well as drivers for Postscript, TeX dvi format, and typewriter-like
devices.  Also included is a modified version of the Berkeley <CODE>me</CODE>
macros and an enhanced version of the X11 <CODE>xditview</CODE> previewer.
<P>
<CODE>mgm</CODE> is a macro package for <CODE>groff</CODE>.  It is almost compatible
with the DWB <CODE>mm</CODE> macros and has several extensions.
Also see "Project GNU Status Report".
<P>
<LI><B><CODE>gzip</B></CODE>     (DjgppD, EmcsT, LangT, SrcCD, UtilT)
<P>
Some of the contents of our tape and FTP distributions are compressed.  We
have software on our tapes and FTP sites to uncompress these files.  Due to
patent troubles with <CODE>compress</CODE>, we have switched to another
compression program, <CODE>gzip</CODE>.  <CODE>gzip</CODE> can expand LZW-compressed
files but uses a different algorithm for compression which generally
produces better results.  It also uncompresses files compressed with System
V's <CODE>pack</CODE> program.
<P>
<LI><B><CODE>hello</B></CODE>     (UtilT, SrcCD)
<P>
The GNU <CODE>hello</CODE> program produces a familiar, friendly greeting.  It
allows non-programmers to use a classic computer science tool which would
otherwise be unavailable to them.  Because it is protected by the GNU
General Public License, users are free to share and change it.
<P>
Like any truly useful program, <CODE>hello</CODE> provides a built-in mail
reader.
<P>
<LI><B><CODE>hp2xx</B></CODE>     (UtilT, SrcCD)
<P>
GNU hp2xx reads HP-GL files, decomposes all drawing commands into
elementary vectors, and converts them into a variety of vector and raster
output formats.  It is also an HP-GL previewer.  Currently supported vector
formats include encapsulated Postscript, Uniplex RGIP, Metafont and various
special TeX-related formats, and simplified HP-GL (line drawing only)
for imports.  Raster formats supported include IMG, PBM, PCX, &#38; HP-PCL
(including Deskjet &#38; DJ5xxC support).  Previewers work under X11 (Unix),
OS/2 (PM &#38; full screen), MS-DOS (SVGA, VGA, &#38; HGC).
<P>
<LI><CODE>indent</CODE>     (UtilD, UtilT, SrcCD)
<P>
GNU <CODE>indent</CODE> is a modified version of the freely-redistributable BSD
program of the same name.  It formats C source according to GNU coding
standards by default, though the BSD default and other formats are
available as options.  Also see "Project GNU Status Report".
<P>
<LI><CODE>ispell</CODE>     (UtilT, SrcCD)
<P>
Ispell is an interactive spell checker that suggests "near misses" as
replacements for unrecognized words.  System and user-maintained
dictionaries can be used.  Standalone and GNU Emacs interfaces are
available.
<P>
<LI>JACAL     <EM>Not available from the FSF</EM>
<P>
JACAL is a symbolic mathematics system for the simplification and
manipulation of equations and single and multiple--valued algebraic
expressions constructed of numbers, variables, radicals, and algebraic
functions, differential operators and holonomic functions.  In addition,
vectors and matrices of the above objects are included.
<P>
JACAL was written in Scheme by Aubrey Jaffer.  It comes with an IEEE
P1178 and R4RS compliant version of Scheme ("SCM") written in C.  SCM
runs on Amiga, Atari-ST, MS-DOS, NOS/VE, VMS, Unix and similar systems.
SLIB is a portable Scheme library used by JACAL.  Get JACAL, SLIB, and
SCM sources via anonymous FTP from either <CODE>nexus.yorku.ca</CODE> in
<TT>`/pub/scheme/new'</TT>,
or
<CODE>altdorf.ai.mit.edu</CODE> in <TT>`/archive/scm'</TT> or
<CODE>prep.ai.mit.edu</CODE> in <TT>`/pub/gnu/jacal'</TT>.
<P>
The FSF is not distributing JACAL on any media.  To receive an IBM PC
floppy disk with the source and executable files, send $99.00 to:
<P>
<PRE>
Aubrey Jaffer, 84 Pleasant Street, Wakefield, MA   01880   USA
</PRE>
<P>
<LI><CODE>less</CODE>     (UtilD, UtilT, SrcCD)
<P>
<CODE>less</CODE> is a display paginator similar to <CODE>more</CODE> and <CODE>pg</CODE> but
with various features (such as the ability to scroll backwards) that most
pagers lack.
<P>
<LI><B>libg<TT>++</B></TT>     (BinCD, LangT, SrcCD)
<P>
The GNU C<TT>++</TT> library is an extensive collection of C<TT>++</TT> <CITE>forest</CITE>
classes, a new IOStream library for input/output routines, and support
tools for use with G<TT>++</TT>.  Among the classes supported are Obstacks,
multiple-precision Integers and Rationals, Complex numbers, arbitrary
length Strings, BitSets, and BitStrings.  There is also a set of
pseudo-generic prototype files available for generating common container
classes.  Partial documentation in Texinfo format is included (not yet
published on paper).
<P>
<LI><B><CODE>m4</B></CODE>     (UtilD, UtilT, SrcCD)
<P>
GNU <CODE>m4</CODE> is an implementation of the traditional Unix macro processor.
It is mostly SVR4 compatible, although it has some extensions (for example,
handling more than 9 positional parameters to macros).  <CODE>m4</CODE> also has
built-in functions for including files, running shell commands, doing
arithmetic, etc.
<P>
<LI><B><CODE>make</B></CODE>     (BinCD, EmcsT, LangT, UtilD, UtilT, SrcCD)
<P>
GNU <CODE>make</CODE> supports POSIX 1003.2 and has all but a few obscure
features of the BSD and System V versions of <CODE>make</CODE>, as well as many
of our own extensions.  GNU extensions include long options, parallel
compilation, conditional execution and functions for text manipulation.
Texinfo source for the <CITE>Make Manual</CITE> comes with the program.
<P>
GNU <CODE>make</CODE> is on several of our tapes because some native
<CODE>make</CODE> programs lack the <CODE>VPATH</CODE> feature essential for using
the GNU configure system to its full extent.  A shell script is included to
build GNU <CODE>make</CODE> on such systems.  Also see "Project GNU Status
Report".
<P>
<LI><B>MandelSpawn</B>     (UtilT, SrcCD)
<P>
A parallel Mandelbrot generation program for the MIT X Window System.
<P>
<LI><B>mtools</B>     (UtilT, SrcCD)
<P>
mtools is a set of public domain programs to allow Unix systems to read,
write and manipulate files on an MS-DOS file system (usually a diskette).
<P>
<LI><B>MULE</B>     (SrcCD)
<P>
MULE is a MULtilingual Enhancement to GNU Emacs 18.  It can handle many
character sets at once including Japanese, Chinese, Korean, Vietnamese,
Thai, Greek, the ISO Latin-1 through Latin-5 character sets, Ukrainian,
Russian, and other Cyrillic alphabets.  A text buffer in MULE can contain a
mixture of characters from these languages.  To input any of these
characters, you can use various input methods provided by MULE itself.  In
addition, if you use MULE under some terminal emulator (kterm, cxterm, or
exterm), you can use its input methods.
<P>
<LI><B>NetHack</B>     (UtilT, SrcCD)
<P>
NetHack is a display-oriented adventure game similar to Rogue.
Both ASCII and X displays are supported.
<P>
<LI><B>NIH Class Library</B>     (LangT, SrcCD)
<P>
The NIH Class Library (formerly known as "OOPS", Object-Oriented Program
Support) is a portable collection of G<TT>++</TT> classes, similar to those in
Smalltalk-80, which has been developed by Keith Gorlen of the National
Institutes of Health (NIH), using the C<TT>++</TT> programming language.
<P>
<LI>Octave     (LangT)
<P>
Octave is a high-level language, primarily intended for numerical
computations.  It provides a convenient command line interface for solving
linear and nonlinear problems numerically.
<P>
Octave can do arithmetic for real and complex scalars and matrices, solve
sets of nonlinear algebraic equations, integrate functions over finite and
infinite intervals, and integrate systems of ordinary differential and
differential-algebraic equations.
<P>
Octave is available via anonymous ftp from <CODE>ftp.che.utexas.edu</CODE> in
the directory <TT>`/pub/octave'</TT>.  The files are in gzipped tar format
(see the file <TT>`README'</TT> on <CODE>prep.ai.mit.edu:/pub/gnu</CODE>).
<P>
The Octave distribution includes a 150+ page Texinfo manual.
<P>
<LI><B>Oleo</B>     (UtilT, SrcCD)
<P>
Oleo is a spreadsheet program (better for you than the more expensive
spreadsheets).  It supports the X Window System and character-based
terminals, and can output Embedded Postscript renditions of spreadsheets.
Keybindings should be familiar to Emacs users and are configurable.  Under
X and in Postscript output, Oleo supports multiple, variable width fonts.
Also see "Project GNU Status Report".
<P>
<LI><B><CODE>p2c</B></CODE>     (LangT, SrcCD)
<P>
<CODE>p2c</CODE> is a Pascal-to-C translator written by Dave Gillespie.  It is
intended primarily for use on 32-bit machines, though porting it to convert
code to work on 16-bit machines may be possible.
<P>
<LI><B><CODE>patch</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>patch</CODE> is our version of Larry Wall's program to take <CODE>diff</CODE>'s
output and apply those differences to an original file to generate the
modified version.
<P>
<LI><B>PCL</B>     (EmcsT, SrcCD)
<P>
PCL is a free implementation of a large subset of CLOS, the Common Lisp
Object System.  PCL was written by Xerox Corporation.
<P>
<LI><B><CODE>perl</B></CODE>     (LangT, SrcCD)
<P>
Larry Wall's <CODE>perl</CODE> combines the features and capabilities of
<CODE>sed</CODE>, <CODE>awk</CODE>, <CODE>sh</CODE> and C, as well as interfaces to all the
system calls and many C library routines.  Perl Mode for editing
<CODE>perl</CODE> code comes with GNU Emacs 19.
<P>
<LI><B><CODE>ptx</B></CODE>     (UtilD, UtilT, SrcCD)
<P>
<CODE>ptx</CODE> is the GNU version of <CODE>ptx</CODE>, a permuted index generator.
Among other things, it produces readable "KWIC" (KeyWords In Context)
indexes without the need of <CODE>nroff</CODE>.  There is an option to output
TeX code.
<P>
<LI><B><CODE>rc</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>rc</CODE> is a shell that features a C-like syntax (much more so than
<CODE>csh</CODE>) and far cleaner quoting rules than the C or Bourne shells.
It's intended to be used interactively, but is also great for writing
scripts.  It inspired the shell <CODE>es</CODE>.
<P>
<LI><B>RCS</B>     (UtilD, UtilT, SrcCD)
<P>
The Revision Control System, RCS, is used for version control and
management of software projects.  When used with GNU <CODE>diff</CODE>, RCS can
handle binary files (executables, object files, 8-bit data, etc).
Also see the entry for "CVS".
<P>
<LI><B><CODE>recode</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>recode</CODE> converts files between character sets and usages.  When exact
transliterations are not possible, it may get rid of the offending
characters or fall back on approximations.  This program recognizes or
produces nearly 150 different character sets and is able to transliterate
files between almost any pair.  Most RFC 1345 character sets are supported.
<P>
<LI><B>regex</B>     (LangT, SrcCD)
<P>
The GNU regular expression library supports POSIX.2, except for
internationalization features.  In the past, it has been included in many
GNU programs which use regex routines.  Now it is finally available
separately.
<P>
<LI>Scheme        (SchmT, SrcCD)
<P>
For information about Scheme, see "Contents of the Scheme Tape".  The
version on the Source Code CD-ROM only works under MS-DOS.
<P>
<LI><B><CODE>screen</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>screen</CODE> is a terminal multiplexor that runs several separate
"screens" (ttys) on a single physical terminal.  Each virtual terminal
emulates a DEC VT100 plus several ANSI X3.64 and ISO 2022 functions.
<CODE>screen</CODE> sessions can be detached and resumed later on a different
terminal.
<P>
<LI><B><CODE>sed</B></CODE>     (UtilD, UtilT, SrcCD)
<P>
<CODE>sed</CODE> is a stream-oriented version of <CODE>ed</CODE>.  It is used copiously
in shell scripts.  GNU sed comes with the rx library, which is a faster
version of regex.
<P>
<LI><B>Shellutils</B>     (UtilT, SrcCD)
<P>
Shellutils are used interactively or in shell scripts:
<CODE>basename</CODE>,
<CODE>date</CODE>,
<CODE>dirname</CODE>,
<CODE>echo</CODE>,
<CODE>env</CODE>,
<CODE>expr</CODE>,
<CODE>false</CODE>,
<CODE>groups</CODE>,
<CODE>id</CODE>,
<CODE>nice</CODE>,
<CODE>nohup</CODE>,
<CODE>printenv</CODE>,
<CODE>printf</CODE>,
<CODE>sleep</CODE>,
<CODE>stty</CODE>,
<CODE>su</CODE>,
<CODE>tee</CODE>,
<CODE>test</CODE>,
<CODE>true</CODE>,
<CODE>tty</CODE>,
<CODE>uname</CODE>,
<CODE>who</CODE>,
<CODE>whoami</CODE>,
&#38;
<CODE>yes</CODE>.
<P>
<LI><B>GNU Shogi</B>     (UtilT, SrcCD)
<P>
Shogi is a Japanese game similar to Chess; a major difference is that
captured pieces can be returned into play.
<P>
GNU Shogi has been created by modifying GNU Chess; GNU Shogi implements
the same features as GNU Chess and uses similar heuristics.  As a new
feature, sequences of partial board patterns can be introduced in order to
help the program play a good order of moves towards specific opening
patterns.  There is both a text and X
display interface.
<P>
GNU Shogi is primarily supported by Matthias Mutz on behalf of FSF.
<P>
<PRE>
Matthias Mutz, Universitaet Passau, FMI, 94030 Passau   Germany
E-mail: <CODE>mutz@kirk.fmi.uni-passau.de</CODE>
</PRE>
<P>
<LI><B>Smalltalk</B>     (LangT, SrcCD)
<P>
GNU Smalltalk is an interpreted object-oriented programming language system
written in portable C.  Features include an incremental garbage collector,
a binary image save capability, the ability to invoke user-written C code
and pass parameters to it, a GNU Emacs editing mode, optional byte-code
compilation tracing and byte-code execution tracing, and automatically
loaded per-user initialization files.
Also see "Project GNU Status Report".
<P>
<LI><B>superopt</B>     (LangT, SrcCD)
<P>
Superopt is a function sequence generator that uses an exhaustive
generate-and-test approach to find the shortest instruction sequence for a
given function.  You provide the GNU superoptimizer a function, a CPU to
generate code for, and how many instructions you can accept.  Its
application in GCC is described in the <CITE>ACM SIGPLAN PLDI'92</CITE>
proceedings.  Superopt supports: SPARC, m68k, m68020, m88k, IBM RS/6000,
AMD 29000, Intel 80x86, Pyramid, DEC Alpha, &#38; HP-PA.
<P>
<LI><B><CODE>tar</B></CODE>     (UtilT, SrcCD)
<P>
GNU <CODE>tar</CODE> includes multivolume support, the ability to archive sparse
files, automatic archive compression/decompression, remote archives and
special features that allow <CODE>tar</CODE> to be used for incremental and full
backups.  Unfortunately GNU <CODE>tar</CODE> implements an early draft of the
POSIX 1003.1 <CITE>ustar</CITE> standard which is different from the final
standard.  Adding support for the new changes in a backward-compatible
fashion is not trivial.
<P>
<LI><B>Termcap Library</B>     (UtilT, SrcCD)
<P>
The GNU Termcap library is a drop-in replacement for <TT>`libtermcap.a'</TT> on
any system.  It does not place an arbitrary limit on the size of Termcap
entries, unlike most other Termcap libraries.  Included is source for the
<CITE>Termcap Manual</CITE> in Texinfo format.
<P>
<LI><B>TeX</B>     <EM>Not available from the FSF</EM>
<P>
TeX is document formatting system that handles complicated typesetting,
including mathematics.
It is the standard formatter for the GNU system.
<P>
We do not distribute TeX because you can get it from the University of
Washington, who serve as the center for maintenance of the Unix
version of TeX.
<P>
To order a full distribution written in <CODE>tar</CODE> on either a 1/4-inch
4-track QIC-24 cartridge or a 4mm DAT cartridge, send $210.00 to:
<P>
<PRE>
Northwest Computing Support Center     DR-10, Thomson Hall 35      E-mail: <CODE>unixtex@u.washington.edu</CODE>
University of Washington     Seattle, WA   98195      Phone: (206) 543-6259
</PRE>
<P>
Please make checks payable to the University of Washington.
Checks must be in U.S. Dollars, drawn on a U.S. bank.
Prepaid orders are preferred but purchase orders are acceptable;
however, purchase orders carry an extra charge of $10.00 to pay for
invoice processing.
Overseas sites: please add to the base cost $20.00 for shipment via
air parcel post, or $30.00 for shipment via courier.
Please check with the above for current prices and formats.
<P>
<LI><B>Texinfo</B>     (EmcsT, LangT, SrcCD, UtilD, UtilT)
<P>
Texinfo is a set of utilities which generate printed manuals and online
hypertext-style documentation (called "Info"), and provide means for
reading the online versions.  Version 3 contains both GNU Emacs Lisp and
standalone C programs, as well as source for the <CITE>Texinfo Manual</CITE>.
Also see "Project GNU Status Report".
<P>
<LI><B>Textutils</B>     (UtilT, SrcCD)
<P>
The Textutils programs manipulate textual data:
<CODE>cat</CODE>,
<CODE>cksum</CODE>,
<CODE>comm</CODE>,
<CODE>csplit</CODE>,
<CODE>cut</CODE>,
<CODE>expand</CODE>,
<CODE>fold</CODE>,
<CODE>head</CODE>,
<CODE>join</CODE>,
<CODE>nl</CODE>,
<CODE>od</CODE>,
<CODE>paste</CODE>,
<CODE>pr</CODE>,
<CODE>sort</CODE>,
<CODE>split</CODE>,
<CODE>sum</CODE>,
<CODE>tac</CODE>,
<CODE>tail</CODE>,
<CODE>tr</CODE>,
<CODE>unexpand</CODE>,
<CODE>uniq</CODE>,
&#38;
<CODE>wc</CODE>.
<P>
<LI><B>Tcl</B>     (LangT, SrcCD)
<P>
Tcl is an embeddable tool command language.
<CODE>expect</CODE> and DejaGnu work with and use Tcl.
<P>
<LI><B>Tile Forth</B>     (LangT, SrcCD)
<P>
Tile Forth is a 32-bit implementation of the Forth--83 standard written in
C, allowing it to be easily moved between different computers
(traditionally, Forth implementations are written in assembler to use
the underlying hardware as optimally as possible, but this also makes
them less portable).
<P>
<LI><B><CODE>time</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>time</CODE> is used to report statistics (usually from a shell) about the
amount of user, system and real time used by a process.
<P>
<LI><B><CODE>tput</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>tput</CODE> is a portable way to allow shell scripts to use special
terminal capabilities.  GNU <CODE>tput</CODE> uses the Termcap database, rather
than Terminfo as most implementations do.
<P>
<LI><B>UUCP</B>     (UtilT, SrcCD)
<P>
This version of UUCP was written by Ian Lance Taylor, and is the standard
UUCP system for GNU.  It currently supports the <CODE>f</CODE>, <CODE>g</CODE> (in all
window and packet sizes), <CODE>G</CODE>, <CODE>t</CODE> and <CODE>e</CODE> protocols, as
well a Zmodem protocol and two new bidirectional protocols.  If you have a
Berkeley sockets library, it can make TCP connections.  If you have TLI
libraries, it can make TLI connections.
<P>
<LI><B><CODE>uuencode</B></CODE>     (UtilT, SrcCD)
<P>
Uuencode and uudecode are used to transmit binary files over
transmission mediums that do not support other than simple ASCII data.
<P>
<LI><B><CODE>wdiff</B></CODE>     (UtilT, SrcCD)
<P>
<CODE>wdiff</CODE> compares two files, finding which words have been deleted or
added to the first in order to obtain the second.  We hope eventually to
integrate it, as well as some ideas from a similar program called
<CODE>spiff</CODE>, into future releases of GNU <CODE>diff</CODE>.
<P>
</UL>
<P>
<H3><A NAME="SEC38" HREF="gnu_bulletin_9401_toc.html#SEC38">Contents of the Emacs Tape</A></H3>
<P>
This tape contains a Common Lisp implementation, GNU Emacs, assorted
extensions that work with GNU Emacs, and a few other important utilities.
<P>
<H3><A NAME="SEC39" HREF="gnu_bulletin_9401_toc.html#SEC39">Contents of the Languages Tape</A></H3>
<P>
This tape contains programming tools: compilers, interpreters, and related
programs (parsers, conversion programs, debuggers, etc.).
<P>
<H3><A NAME="SEC40" HREF="gnu_bulletin_9401_toc.html#SEC40">Contents of the Utilities Tape</A></H3>
<P>
This tape consists mostly of smaller utilities and miscellaneous
applications not available on the other GNU tapes.
<P>
<H3><A NAME="SEC41" HREF="gnu_bulletin_9401_toc.html#SEC41">Contents of the Scheme Tape</A></H3>
<P>
Scheme is a simplified, lexically-scoped dialect of Lisp.  It was designed
at MIT and other universities to teach students the art of programming, and
to research new parallel programming constructs and compilation techniques.
<P>
This tape contains MIT Scheme 7.1, which conforms to the
(MIT AI Lab Memo 848b), for which TeX source is included.
It is written partly in C, but is presently hard to bootstrap.
Binaries which can be used to bootstrap Scheme are available for the
following systems:
<P>
<UL>
<LI>HP 9000 series 300, 400, 700 &#38; 800 running HP-UX 7.0 or 8.0
<LI>NeXT running NeXT OS 1.0 or 2.0
<LI>Sun-3 or Sun-4 running SunOS 4.1
<LI>DECstation 3100/5100 running Ultrix 4.0
<LI>Sony NWS-3250 running NEWS OS 5.01
<LI>Vax running 4.3 BSD
</UL>
<P>
If your system is not on this list and you don't enjoy the bootstrap
challenge, see the "JACAL" entry in the "GNU Software Available Now."
<P>
<H3><A NAME="SEC42" HREF="gnu_bulletin_9401_toc.html#SEC42">Contents of the X11 Tapes</A></H3>
<P>
The two X11 tapes contain Version 11, Release 5 of the MIT X Window System.
The first FSF tape contains all of the core software, documentation and
some contributed clients.  We call this the "required" X tape since it is
necessary for running X or running GNU Emacs under X.  The second,
"optional", FSF tape contains contributed libraries and other toolkits,
the Andrew User Interface System, games, and other programs.
<P>
The X11 Required tape also contains all fixes and patches released to date.
We update this tape as new fixes and patches are released.
<P>
<H3><A NAME="SEC43" HREF="gnu_bulletin_9401_toc.html#SEC43">Berkeley Networking 2 Tape</A></H3>
<P>
The Berkeley "Net2" release contains the second 4.3 BSD distribution and
is newer than both 4.3 BSD-Tahoe and 4.3 BSD-Reno.  It includes most of the
BSD software system except for a few utilities, some parts of the kernel
and some library routines which your own C library is likely to provide (we
have replacements on other tapes for many of the missing programs).  This
release also contains third party software including Kerberos and some GNU
software.
<P>
<H3><A NAME="SEC44" HREF="gnu_bulletin_9401_toc.html#SEC44">VMS Emacs and VMS Compiler Tapes</A></H3>
<P>
We offer two VMS tapes.  One has just the GNU Emacs editor.  The other has
the GNU C compiler, Bison (to compile GCC), GAS (to assemble GCC's output)
and some library and include files.  We are not aware of a GDB port for
VMS.  Both VMS tapes have executables from which you can bootstrap, as the
DEC VMS C compiler cannot compile GCC.  Please do not ask us to devote
effort to VMS support, because it is peripheral to the GNU Project.
<P>
<P>Go to the <A HREF="gnu_bulletin_9401_19.html">previous</A>, <A HREF="gnu_bulletin_9401_21.html">next</A> chapter.<P>
